home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacApp Release 10 / MacApp Release 10 - HD Ready / Examples / Skeleton / UTrackerSkeleton.cp < prev    next >
Encoding:
Text File  |  1996-04-03  |  4.5 KB  |  129 lines  |  [TEXT/MPS ]

  1. //----------------------------------------------------------------------------------------
  2. // UTrackerSkeleton.cp
  3. // Copyright © 1991-96 by Apple Computer, Inc. All rights reserved. 
  4. //----------------------------------------------------------------------------------------
  5.  
  6. #ifndef __UTRACKERSKELETON__
  7. #include "UTrackerSkeleton.h"
  8. #endif
  9.  
  10. #ifndef __UDOCUMENTSKELETON__
  11. #include "UDocumentSkeleton.h"
  12. #endif
  13.  
  14. //----------------------------------------------------------------------------------------
  15. // Constants:
  16.  
  17. const CommandNumber cTrackerCommand = 403;
  18.  
  19.  
  20. //========================================================================================
  21. // CLASS TTrackerSkeleton
  22. //========================================================================================
  23. #undef Inherited
  24. #define Inherited TTracker
  25.  
  26. #pragma segment AOpen
  27. MA_DEFINE_CLASS_M1(TTrackerSkeleton, Inherited);
  28.  
  29. //----------------------------------------------------------------------------------------
  30. // TTrackerSkeleton constructor 
  31. //----------------------------------------------------------------------------------------
  32. #pragma segment AOpen
  33.  
  34. TTrackerSkeleton::TTrackerSkeleton() 
  35. {
  36.     fDocumentSkeleton = NULL;
  37. } // TTrackerSkeleton::TTrackerSkeleton 
  38.  
  39. //----------------------------------------------------------------------------------------
  40. // TTrackerSkeleton destructor
  41. //----------------------------------------------------------------------------------------
  42. #pragma segment MADestructorRes
  43.  
  44. TTrackerSkeleton::~TTrackerSkeleton()
  45. {
  46. }
  47.  
  48. //----------------------------------------------------------------------------------------
  49. // TTrackerSkeleton::ITrackerSkeleton: 
  50. //----------------------------------------------------------------------------------------
  51. #pragma segment AOpen
  52.  
  53. void TTrackerSkeleton::ITrackerSkeleton(TDocumentSkeleton* itsDocumentSkeleton,
  54.                                             TView* itsView,
  55.                                             TScroller* itsScroller,
  56.                                             const VPoint& itsMouse)
  57. {
  58.     this->ITracker(cTrackerCommand,itsDocumentSkeleton,kCanUndo,kDoesNotCauseChange, NULL, 
  59.                     itsView, itsScroller, itsMouse);
  60.     fDocumentSkeleton = itsDocumentSkeleton;
  61. } // TTrackerSkeleton::ITrackerSkeleton 
  62.  
  63. //----------------------------------------------------------------------------------------
  64. // TTrackerSkeleton::DoIt: 
  65. //----------------------------------------------------------------------------------------
  66. #pragma segment ADoCommand
  67.  
  68. void TTrackerSkeleton::DoIt() // override 
  69. {
  70.     SysBeep(2);
  71. } // TTrackerSkeleton::DoIt 
  72.  
  73. //----------------------------------------------------------------------------------------
  74. // TTrackerSkeleton::TrackFeedback: 
  75. //----------------------------------------------------------------------------------------
  76. #pragma segment ADoCommand
  77.  
  78. void TTrackerSkeleton::TrackFeedback(TrackPhase aTrackPhase,
  79.                                         const VPoint& anchorPoint,
  80.                                         const VPoint& previousPoint,
  81.                                         const VPoint& nextPoint,
  82.                                         Boolean mouseDidMove,
  83.                                         Boolean turnItOn) // override 
  84. {
  85.     Inherited::TrackFeedback(aTrackPhase, anchorPoint, previousPoint, nextPoint, mouseDidMove, turnItOn); 
  86. } // TTrackerSkeleton::TrackFeedback 
  87.  
  88.  
  89. //----------------------------------------------------------------------------------------
  90. // TTrackerSkeleton::TrackMouse: 
  91. //----------------------------------------------------------------------------------------
  92. #pragma segment ADoCommand
  93.  
  94. TTracker* TTrackerSkeleton::TrackMouse(TrackPhase aTrackPhase,
  95.                                              VPoint& anchorPoint,
  96.                                              VPoint& previousPoint,
  97.                                              VPoint& nextPoint,
  98.                                              Boolean mouseDidMove) // override 
  99. {
  100.     return Inherited::TrackMouse(aTrackPhase,anchorPoint, previousPoint, nextPoint,mouseDidMove);
  101. } // TTrackerSkeleton::TrackMouse 
  102.  
  103. //----------------------------------------------------------------------------------------
  104. // TTrackerSkeleton::RedoIt: 
  105. //----------------------------------------------------------------------------------------
  106. #pragma segment ADoCommand
  107.  
  108. void TTrackerSkeleton::RedoIt() // override 
  109. {
  110.     Inherited::RedoIt();    // TCommand::ReDoit simply calls DoIt, but this is not
  111.                             // always adequate
  112. } // TTrackerSkeleton::RedoIt 
  113.  
  114. //----------------------------------------------------------------------------------------
  115. // TTrackerSkeleton::UndoIt: 
  116. //----------------------------------------------------------------------------------------
  117. #pragma segment ADoCommand
  118.  
  119. void TTrackerSkeleton::UndoIt() // override 
  120. {
  121.     SysBeep(2);
  122.     SysBeep(2);
  123. } // TTrackerSkeleton::UndoIt 
  124.  
  125. //----------------------------------------------------------------------------------------
  126. // End of UTrackerSkeleton.cp
  127.  
  128. #pragma segment Inline
  129.